package lianxi;

/**
 * 2 假如我们在开发一个系统时需要对员工进行建模，【员工】包含3个属性：姓名、工号以及工资。【经理】也是员工，除了含有员工的属性外，
 * 
 * 另为还有一个奖金属性。请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问。
 * 
 * @author lenovo
 * @date 2020年7月30日 @time 上午9:25:28
 */
public class _02_ {

	public static void main(String[] args) {
		Staff s1 = new Staff();
		Staff s2 = new Staff();
		Manager m1 = new Manager();
		s1.setName("张三");
		s2.setName("李四");
		m1.setName("王经理");
		m1.setBonus(3000.00);
		System.out.println(s1);
		System.out.println(s2);
		System.out.println(m1);
	}

}

/**
 * 员工类、
 * 
 * @author lenovo
 * @date 2020年7月30日 @time 上午9:27:02
 */
class Staff {
	protected String name;
	protected String id;
	protected double salary;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public double getSalary() {
		return salary;
	}

	public void setSalary(double salary) {
		this.salary = salary;
	}

	@Override
	public String toString() {
		return "Staff [name=" + name + ", id=" + id + ", salary=" + salary + "]";
	}

}

/**
 * 经理类
 * 
 * @author lenovo
 * @date 2020年7月30日 @time 上午9:28:23
 */
class Manager extends Staff {
	double bonus;

	public double getBonus() {
		return bonus;
	}

	public void setBonus(double bonus) {
		this.bonus = bonus;
	}

	@Override
	public String toString() {
		return "Manager [name=" + name + ", id=" + id + ", salary=" + salary + "bonus" + bonus + "]";
	}

}